package com.hottv.meeting.videomeeting.module.meeting.bean;

/**
 * Created on 2019-07-04 14:37
 * {
 * "user": {
 * "hottvId": "发送消息者的hottvId",
 * "userId": 528981534,
 * "nickname": "发送消息者的用户昵称",
 * "avatar": "发送消息者的用户头像"
 * },
 * "meeting": {
 * "meetingId": "发起会议者的hottvid",
 * "meetingUserId": 528981534,
 * "meetingNickname": "发起会议者的用户昵称",
 * "meetingAvatar": "发起会议者的用户头像"
 * },
 * "broadcast": {
 * "broadcastId": "当前会议主播的hottvid",
 * "broadcastUserId": 528981534,
 * "broadcastNickname": "发起会议者的用户昵称",
 * "broadcastAvatar": "发起会议者的用户头像"
 * },
 * "signalType": 0
 * }
 * <p>
 * 信号类型：前提是，创建者可以请求所有连麦者当主播；连麦者只可以申请设置自己为主播。
 * 0：创建者请求连麦者，设置连麦者为主播；1：连麦者请求创建者，设置自己为主播；
 * 2：连麦者同意创建者设置连麦者自己为主播；3：创建者同意连麦者设置连麦者自己为主播；
 * 4：连麦者拒绝创建者设置连麦者自己为主播；5：创建者拒绝连麦者设置连麦者自己为主播；
 * 6：切换主播动作；7：有连麦者加入，告知对方自己的用户信息。
 * 8: 增加一个content字符串类型的字段，用于留言板
 * 9: 会议结束发送通知
 * 10：全体禁言通知
 * 11:取消禁言通知
 *
 * @author zhangchaozhou
 * @email 13760289294@139.com
 * @wechat 13760289294
 */
public class HotMessage {

    public static  final  int MESSAGE_TYPE_SET_BROASTCAST = 0;
    public static  final  int MESSAGE_TYPE_REQUEST_BROASTCAST = 1;
    public static  final  int MESSAGE_TYPE_AGREE_BROASTCAST = 2;
    public static  final  int MESSAGE_TYPE_AGREE_SET_BROASTCAST = 3;
    public static  final  int MESSAGE_TYPE_REFUSE_BROASTCAST = 4;
    public static  final  int MESSAGE_TYPE_REFUSE_SET_BROASTCAST = 5;
    public static  final  int MESSAGE_TYPE_CHANGE_BROASTCAST = 6;
    public static  final  int MESSAGE_TYPE_NOTICE_INFO = 7;
    public static  final  int MESSAGE_TYPE_MESSAGE = 8;
    public static  final  int MESSAGE_TYPE_QUIT = 9;
    public static  final  int MESSAGE_TYPE_SHUT_UP = 10;
    public static  final  int MESSAGE_TYPE_SPEAK = 11;
    /**
     * user : {"hottvId":"发送消息者的hottvId","userId":528981534,"nickname":"发送消息者的用户昵称","avatar":"发送消息者的用户头像"}
     * meeting : {"meetingId":"发起会议者的hottvid","meetingUserId":528981534,"meetingNickname":"发起会议者的用户昵称","meetingAvatar":"发起会议者的用户头像"}
     * broadcast : {"broadcastId":"当前会议主播的hottvid","broadcastUserId":528981534,"broadcastNickname":"发起会议者的用户昵称","broadcastAvatar":"发起会议者的用户头像"}
     */

    private UserBean user;
    private MeetingBean meeting;
    private BroadcastBean broadcast;
    private int signalType;
    private String content;

    public String getContent(){return  content;}

    public void setContent(String contentStr)
    {
        content = contentStr;
    }

    public int getSignalType() {
        return signalType;
    }

    public HotMessage setSignalType(int signalType) {
        this.signalType = signalType;
        return this;
    }

    public UserBean getUser() {
        return user;
    }

    public void setUser(UserBean user) {
        this.user = user;
    }

    public MeetingBean getMeeting() {
        return meeting;
    }

    public void setMeeting(MeetingBean meeting) {
        this.meeting = meeting;
    }

    public BroadcastBean getBroadcast() {
        return broadcast;
    }

    public void setBroadcast(BroadcastBean broadcast) {
        this.broadcast = broadcast;
    }

    public static class UserBean {
        /**
         * hottvId : 发送消息者的hottvId
         * userId : 528981534
         * nickname : 发送消息者的用户昵称
         * avatar : 发送消息者的用户头像
         */

        private String hottvId;
        private int userId;
        private String nickname;
        private String avatar;

        public String getHottvId() {
            return hottvId;
        }

        public void setHottvId(String hottvId) {
            this.hottvId = hottvId;
        }

        public int getUserId() {
            return userId;
        }

        public void setUserId(int userId) {
            this.userId = userId;
        }

        public String getNickname() {
            return nickname;
        }

        public void setNickname(String nickname) {
            this.nickname = nickname;
        }

        public String getAvatar() {
            return avatar;
        }

        public void setAvatar(String avatar) {
            this.avatar = avatar;
        }
    }

    public static class MeetingBean {
        /**
         * meetingId : 发起会议者的hottvid
         * meetingUserId : 528981534
         * meetingNickname : 发起会议者的用户昵称
         * meetingAvatar : 发起会议者的用户头像
         */

        private String meetingId;
        private int meetingUserId;
        private String meetingNickname;
        private String meetingAvatar;

        public String getMeetingId() {
            return meetingId;
        }

        public void setMeetingId(String meetingId) {
            this.meetingId = meetingId;
        }

        public int getMeetingUserId() {
            return meetingUserId;
        }

        public void setMeetingUserId(int meetingUserId) {
            this.meetingUserId = meetingUserId;
        }

        public String getMeetingNickname() {
            return meetingNickname;
        }

        public void setMeetingNickname(String meetingNickname) {
            this.meetingNickname = meetingNickname;
        }

        public String getMeetingAvatar() {
            return meetingAvatar;
        }

        public void setMeetingAvatar(String meetingAvatar) {
            this.meetingAvatar = meetingAvatar;
        }
    }

    public static class BroadcastBean {
        /**
         * broadcastId : 当前会议主播的hottvid
         * broadcastUserId : 528981534
         * broadcastNickname : 发起会议者的用户昵称
         * broadcastAvatar : 发起会议者的用户头像
         */

        private String broadcastId;
        private int broadcastUserId;
        private String broadcastNickname;
        private String broadcastAvatar;

        public String getBroadcastId() {
            return broadcastId;
        }

        public void setBroadcastId(String broadcastId) {
            this.broadcastId = broadcastId;
        }

        public int getBroadcastUserId() {
            return broadcastUserId;
        }

        public void setBroadcastUserId(int broadcastUserId) {
            this.broadcastUserId = broadcastUserId;
        }

        public String getBroadcastNickname() {
            return broadcastNickname;
        }

        public void setBroadcastNickname(String broadcastNickname) {
            this.broadcastNickname = broadcastNickname;
        }

        public String getBroadcastAvatar() {
            return broadcastAvatar;
        }

        public void setBroadcastAvatar(String broadcastAvatar) {
            this.broadcastAvatar = broadcastAvatar;
        }
    }
}
